Most systems have a way to find objects when a specific path is not specified. The same is true of the AS/400 and it uses an object called the library list (*LIBL
). This object doesn't exist on its own and is always associated with another object like a job or a job description (*JOBD
). As of OS/400 V5R1 the user portion of the Library List can contain up to 250 library names. Prior to that it could only have 25 libraries. (This is something to keep in mind when selling software because on OS/400 V4R5 and below a job description with more than 25 libraries in its library list cannot be restored.)
A job's library list consists of four sections:
QSYS
, QHLPSYS
, QUSRSYS
, etc. The system portion can hold up to 15 library names. The default contents of the system portion are specified in the QSYSLIBL
system value. The contents of the system portion can be changed for the current job to differ from QSYSLIBL
by using the CHGSYSLIBL
command.CHGCURLIB
command. To change it for the user on all future jobs use the CHGUSRPRF
command.SBMJOB
command's INLLIBL
parameter. A job's library list can be changed locally with the EDTLIBL
, CHGLIBL
, ADDLIBLE
, and RMVLIBLE
command.As was mentioned above the user portion of the library list for any job can be stored in a job description so that when a job starts up it will use the list specified there. Some job descriptions specify the special value *SYSVAL
which means that the library list can be found in the system value QUSRLIBL
. Please note that the AS/400 Operating System will allow you to delete a library that is in a job description or either of the library list system values provided there are no jobs locking the library. However, all future jobs that use these now tainted lists will fail to start.